package com.brightgenerous.niconama05.work3;

import com.brightgenerous.niconama05.anime.Heroine;
import com.brightgenerous.niconama05.anime.Interviewer;
import com.brightgenerous.niconama05.anime.product.Ichigomashimaro;
import com.brightgenerous.niconama05.anime.product.Yuruyuri;

/**
 * やる夫 3
 * 
 * @author brigen
 */
public class Yaruo3 implements Interviewer {

	/** 改行文字 */
	private static final String LINE_SEPARATOR = System.getProperty("line.separator");

	/**
	 * 苺ましまろをインタビューする
	 *
	 * @param x_ichigomashimaro 苺ましまろ
	 */
	@Override
	public void interview(Ichigomashimaro x_ichigomashimaro) {
		StringBuilder kiji = new StringBuilder();
		kiji.append("タイトル:");
		kiji.append(x_ichigomashimaro.getTitle());
		kiji.append(LINE_SEPARATOR);
		kiji.append("あらすじ:");
		kiji.append(x_ichigomashimaro.getDescription());
		kiji.append(LINE_SEPARATOR);
		kiji.append("--- CHARACTERS ---").append(LINE_SEPARATOR);
		kiji.append(heroineToString(x_ichigomashimaro.getChika())).append(LINE_SEPARATOR);
		kiji.append(heroineToString(x_ichigomashimaro.getMiu())).append(LINE_SEPARATOR);
		kiji.append(heroineToString(x_ichigomashimaro.getMatsuri())).append(LINE_SEPARATOR);
		kiji.append(heroineToString(x_ichigomashimaro.getAna())).append(LINE_SEPARATOR);
		kiji.append("------------------").append(LINE_SEPARATOR);

		System.out.println(kiji.toString());
	}

	/**
	 * ゆるゆりをインタビューする
	 *
	 * @param x_yuruyuri ゆるゆり
	 */
	@Override
	public void interview(Yuruyuri x_yuruyuri) {
		StringBuilder kiji = new StringBuilder();
		kiji.append("タイトル:");
		kiji.append(x_yuruyuri.getTitle());
		kiji.append(LINE_SEPARATOR);
		kiji.append("あらすじ:");
		kiji.append(x_yuruyuri.getDescription());
		kiji.append(LINE_SEPARATOR);
		kiji.append("--- CHARACTERS ---").append(LINE_SEPARATOR);
		kiji.append(heroineToString(x_yuruyuri.getAkari())).append(LINE_SEPARATOR);
		kiji.append(heroineToString(x_yuruyuri.getKyoko())).append(LINE_SEPARATOR);
		kiji.append(heroineToString(x_yuruyuri.getYui())).append(LINE_SEPARATOR);
		kiji.append(heroineToString(x_yuruyuri.getChinatsu())).append(LINE_SEPARATOR);
		kiji.append("------------------").append(LINE_SEPARATOR);

		System.out.println(kiji.toString());
	}

	/**
	 * キャラクターから一行紹介文を生成する
	 *
	 * @param x_heroine キャラクタ―
	 * @return 一行紹介文
	 */
	private static String heroineToString(Heroine x_heroine) {
		return x_heroine.getName() + "(CV:" + x_heroine.getActor() + ")";
	}
}
